/*
*
* FrameworkContractAddressInfoExample.java
* @author may
* @date 2021-04-05 18:58:09
*/
package com.steel.yfmall.cloud.assistant.po.goods;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class FrameworkContractAddressInfoExample {
    /**
     * framework_contract_address_info
     */
    protected String orderByClause;

    /**
     * framework_contract_address_info
     */
    protected boolean distinct;

    /**
     * framework_contract_address_info
     */
    protected List<Criteria> oredCriteria;

    private Integer limit;

    private Integer offset;

    private String groupByClause;

    private String selectFields;

    /**
     * 构造查询条件:framework_contract_address_info
     * @Title: FrameworkContractAddressInfoExample
     * @Description: ( )
     * @return 返回类型 null
     * @date 2021-04-05 18:58:09
     */
    public FrameworkContractAddressInfoExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    /**
     * 设置排序字段:framework_contract_address_info
     * @Title: setOrderByClause
     * @Description: ( 设置排序字段 )
     * @param 参数说明 类型:String	名称:orderByClause 排序字段
     * @return 返回类型 null
     * @date 2021-04-05 18:58:09
     */
    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    /**
     * 获取排序字段:framework_contract_address_info
     * @Title: getOrderByClause
     * @Description: ( 获取排序字段 )
     * @return 返回类型 java.lang.String
     * @date 2021-04-05 18:58:09
     */
    public String getOrderByClause() {
        return orderByClause;
    }

    /**
     * 设置过滤重复数据:framework_contract_address_info
     * @Title: setDistinct
     * @Description: ( 设置过滤重复数据 )
     * @param 参数说明 类型:boolean	名称:distinct 是否过滤重复数据
     * @return 返回类型 null
     * @date 2021-04-05 18:58:09
     */
    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    /**
     * 是否过滤重复数据:framework_contract_address_info
     * @Title: isDistinct
     * @Description: ( 是否过滤重复数据 )
     * @return 返回类型 boolean
     * @date 2021-04-05 18:58:09
     */
    public boolean isDistinct() {
        return distinct;
    }

    /**
     * 获取当前的查询条件实例:framework_contract_address_info
     * @Title: getOredCriteria
     * @Description: ( 获取当前的查询条件实例 )
     * @return 返回类型 java.util.List<Criteria>
     * @date 2021-04-05 18:58:09
     */
    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    /**
     *:framework_contract_address_info
     * @Title: or
     * @Description: ( )
     *
     * @param 参数说明 类型:Criteria	名称:criteria 过滤条件实例
     * @return 返回类型 null
     * @date 2021-04-05 18:58:09
     */
    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    /**
     *:framework_contract_address_info
     * @Title: or
     * @Description: ( )
     *
     * @return 返回类型 Criteria
     * @date 2021-04-05 18:58:09
     */
    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    /**
     * 创建一个查询条件:framework_contract_address_info
     * @Title: createCriteria
     * @Description: ( 创建一个查询条件 )
     * @return 返回类型 Criteria
     * @date 2021-04-05 18:58:09
     */
    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    /**
     * 内部构建查询条件对象:framework_contract_address_info
     * @Title: createCriteriaInternal
     * @Description: ( 内部构建查询条件对象 )
     * @return 返回类型 Criteria
     * @date 2021-04-05 18:58:09
     */
    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    /**
     * 清除查询条件:framework_contract_address_info
     * @Title: clear
     * @Description: ( 清除查询条件 )
     * @return 返回类型 null
     * @date 2021-04-05 18:58:09
     */
    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    public void limit(Integer offset, Integer limit) {
        this.offset = offset;
        this.limit = limit;
    }

    public Integer getLimit() {
        return limit;
    }

    public void setOffset(Integer offset) {
        this.offset = offset;
    }

    public Integer getOffset() {
        return offset;
    }

    public void setGroupByClause(String groupByClause) {
        this.groupByClause = groupByClause;
    }

    public String getGroupByClause() {
        return groupByClause;
    }

    public void setSelectFields(String selectFields) {
        this.selectFields = selectFields;
    }

    public String getSelectFields() {
        return selectFields;
    }

    /**
     * @title framework_contract_address_info表的实体类
     * @description framework_contract_address_info
     * @version 1.0
     * @author may
     * @date 2021-04-05 18:58:09
     */
    protected abstract static class GeneratedCriteria implements java.io.Serializable {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andCommerceContractNoIsNull() {
            addCriterion("commerce_contract_no is null");
            return (Criteria) this;
        }

        public Criteria andCommerceContractNoIsNotNull() {
            addCriterion("commerce_contract_no is not null");
            return (Criteria) this;
        }

        public Criteria andCommerceContractNoEqualTo(String value) {
            addCriterion("commerce_contract_no =", value, "commerceContractNo");
            return (Criteria) this;
        }

        public Criteria andCommerceContractNoNotEqualTo(String value) {
            addCriterion("commerce_contract_no <>", value, "commerceContractNo");
            return (Criteria) this;
        }

        public Criteria andCommerceContractNoGreaterThan(String value) {
            addCriterion("commerce_contract_no >", value, "commerceContractNo");
            return (Criteria) this;
        }

        public Criteria andCommerceContractNoGreaterThanOrEqualTo(String value) {
            addCriterion("commerce_contract_no >=", value, "commerceContractNo");
            return (Criteria) this;
        }

        public Criteria andCommerceContractNoLessThan(String value) {
            addCriterion("commerce_contract_no <", value, "commerceContractNo");
            return (Criteria) this;
        }

        public Criteria andCommerceContractNoLessThanOrEqualTo(String value) {
            addCriterion("commerce_contract_no <=", value, "commerceContractNo");
            return (Criteria) this;
        }

        public Criteria andCommerceContractNoLike(String value) {
            addCriterion("commerce_contract_no like", value, "commerceContractNo");
            return (Criteria) this;
        }

        public Criteria andCommerceContractNoNotLike(String value) {
            addCriterion("commerce_contract_no not like", value, "commerceContractNo");
            return (Criteria) this;
        }

        public Criteria andCommerceContractNoIn(List<String> values) {
            addCriterion("commerce_contract_no in", values, "commerceContractNo");
            return (Criteria) this;
        }

        public Criteria andCommerceContractNoNotIn(List<String> values) {
            addCriterion("commerce_contract_no not in", values, "commerceContractNo");
            return (Criteria) this;
        }

        public Criteria andCommerceContractNoBetween(String value1, String value2) {
            addCriterion("commerce_contract_no between", value1, value2, "commerceContractNo");
            return (Criteria) this;
        }

        public Criteria andCommerceContractNoNotBetween(String value1, String value2) {
            addCriterion("commerce_contract_no not between", value1, value2, "commerceContractNo");
            return (Criteria) this;
        }

        public Criteria andCarTypeIsNull() {
            addCriterion("car_type is null");
            return (Criteria) this;
        }

        public Criteria andCarTypeIsNotNull() {
            addCriterion("car_type is not null");
            return (Criteria) this;
        }

        public Criteria andCarTypeEqualTo(String value) {
            addCriterion("car_type =", value, "carType");
            return (Criteria) this;
        }

        public Criteria andCarTypeNotEqualTo(String value) {
            addCriterion("car_type <>", value, "carType");
            return (Criteria) this;
        }

        public Criteria andCarTypeGreaterThan(String value) {
            addCriterion("car_type >", value, "carType");
            return (Criteria) this;
        }

        public Criteria andCarTypeGreaterThanOrEqualTo(String value) {
            addCriterion("car_type >=", value, "carType");
            return (Criteria) this;
        }

        public Criteria andCarTypeLessThan(String value) {
            addCriterion("car_type <", value, "carType");
            return (Criteria) this;
        }

        public Criteria andCarTypeLessThanOrEqualTo(String value) {
            addCriterion("car_type <=", value, "carType");
            return (Criteria) this;
        }

        public Criteria andCarTypeLike(String value) {
            addCriterion("car_type like", value, "carType");
            return (Criteria) this;
        }

        public Criteria andCarTypeNotLike(String value) {
            addCriterion("car_type not like", value, "carType");
            return (Criteria) this;
        }

        public Criteria andCarTypeIn(List<String> values) {
            addCriterion("car_type in", values, "carType");
            return (Criteria) this;
        }

        public Criteria andCarTypeNotIn(List<String> values) {
            addCriterion("car_type not in", values, "carType");
            return (Criteria) this;
        }

        public Criteria andCarTypeBetween(String value1, String value2) {
            addCriterion("car_type between", value1, value2, "carType");
            return (Criteria) this;
        }

        public Criteria andCarTypeNotBetween(String value1, String value2) {
            addCriterion("car_type not between", value1, value2, "carType");
            return (Criteria) this;
        }

        public Criteria andLoadingModeIsNull() {
            addCriterion("loading_mode is null");
            return (Criteria) this;
        }

        public Criteria andLoadingModeIsNotNull() {
            addCriterion("loading_mode is not null");
            return (Criteria) this;
        }

        public Criteria andLoadingModeEqualTo(String value) {
            addCriterion("loading_mode =", value, "loadingMode");
            return (Criteria) this;
        }

        public Criteria andLoadingModeNotEqualTo(String value) {
            addCriterion("loading_mode <>", value, "loadingMode");
            return (Criteria) this;
        }

        public Criteria andLoadingModeGreaterThan(String value) {
            addCriterion("loading_mode >", value, "loadingMode");
            return (Criteria) this;
        }

        public Criteria andLoadingModeGreaterThanOrEqualTo(String value) {
            addCriterion("loading_mode >=", value, "loadingMode");
            return (Criteria) this;
        }

        public Criteria andLoadingModeLessThan(String value) {
            addCriterion("loading_mode <", value, "loadingMode");
            return (Criteria) this;
        }

        public Criteria andLoadingModeLessThanOrEqualTo(String value) {
            addCriterion("loading_mode <=", value, "loadingMode");
            return (Criteria) this;
        }

        public Criteria andLoadingModeLike(String value) {
            addCriterion("loading_mode like", value, "loadingMode");
            return (Criteria) this;
        }

        public Criteria andLoadingModeNotLike(String value) {
            addCriterion("loading_mode not like", value, "loadingMode");
            return (Criteria) this;
        }

        public Criteria andLoadingModeIn(List<String> values) {
            addCriterion("loading_mode in", values, "loadingMode");
            return (Criteria) this;
        }

        public Criteria andLoadingModeNotIn(List<String> values) {
            addCriterion("loading_mode not in", values, "loadingMode");
            return (Criteria) this;
        }

        public Criteria andLoadingModeBetween(String value1, String value2) {
            addCriterion("loading_mode between", value1, value2, "loadingMode");
            return (Criteria) this;
        }

        public Criteria andLoadingModeNotBetween(String value1, String value2) {
            addCriterion("loading_mode not between", value1, value2, "loadingMode");
            return (Criteria) this;
        }

        public Criteria andAddressTypeIsNull() {
            addCriterion("address_type is null");
            return (Criteria) this;
        }

        public Criteria andAddressTypeIsNotNull() {
            addCriterion("address_type is not null");
            return (Criteria) this;
        }

        public Criteria andAddressTypeEqualTo(String value) {
            addCriterion("address_type =", value, "addressType");
            return (Criteria) this;
        }

        public Criteria andAddressTypeNotEqualTo(String value) {
            addCriterion("address_type <>", value, "addressType");
            return (Criteria) this;
        }

        public Criteria andAddressTypeGreaterThan(String value) {
            addCriterion("address_type >", value, "addressType");
            return (Criteria) this;
        }

        public Criteria andAddressTypeGreaterThanOrEqualTo(String value) {
            addCriterion("address_type >=", value, "addressType");
            return (Criteria) this;
        }

        public Criteria andAddressTypeLessThan(String value) {
            addCriterion("address_type <", value, "addressType");
            return (Criteria) this;
        }

        public Criteria andAddressTypeLessThanOrEqualTo(String value) {
            addCriterion("address_type <=", value, "addressType");
            return (Criteria) this;
        }

        public Criteria andAddressTypeLike(String value) {
            addCriterion("address_type like", value, "addressType");
            return (Criteria) this;
        }

        public Criteria andAddressTypeNotLike(String value) {
            addCriterion("address_type not like", value, "addressType");
            return (Criteria) this;
        }

        public Criteria andAddressTypeIn(List<String> values) {
            addCriterion("address_type in", values, "addressType");
            return (Criteria) this;
        }

        public Criteria andAddressTypeNotIn(List<String> values) {
            addCriterion("address_type not in", values, "addressType");
            return (Criteria) this;
        }

        public Criteria andAddressTypeBetween(String value1, String value2) {
            addCriterion("address_type between", value1, value2, "addressType");
            return (Criteria) this;
        }

        public Criteria andAddressTypeNotBetween(String value1, String value2) {
            addCriterion("address_type not between", value1, value2, "addressType");
            return (Criteria) this;
        }

        public Criteria andSettlementTicketIsNull() {
            addCriterion("settlement_ticket is null");
            return (Criteria) this;
        }

        public Criteria andSettlementTicketIsNotNull() {
            addCriterion("settlement_ticket is not null");
            return (Criteria) this;
        }

        public Criteria andSettlementTicketEqualTo(String value) {
            addCriterion("settlement_ticket =", value, "settlementTicket");
            return (Criteria) this;
        }

        public Criteria andSettlementTicketNotEqualTo(String value) {
            addCriterion("settlement_ticket <>", value, "settlementTicket");
            return (Criteria) this;
        }

        public Criteria andSettlementTicketGreaterThan(String value) {
            addCriterion("settlement_ticket >", value, "settlementTicket");
            return (Criteria) this;
        }

        public Criteria andSettlementTicketGreaterThanOrEqualTo(String value) {
            addCriterion("settlement_ticket >=", value, "settlementTicket");
            return (Criteria) this;
        }

        public Criteria andSettlementTicketLessThan(String value) {
            addCriterion("settlement_ticket <", value, "settlementTicket");
            return (Criteria) this;
        }

        public Criteria andSettlementTicketLessThanOrEqualTo(String value) {
            addCriterion("settlement_ticket <=", value, "settlementTicket");
            return (Criteria) this;
        }

        public Criteria andSettlementTicketLike(String value) {
            addCriterion("settlement_ticket like", value, "settlementTicket");
            return (Criteria) this;
        }

        public Criteria andSettlementTicketNotLike(String value) {
            addCriterion("settlement_ticket not like", value, "settlementTicket");
            return (Criteria) this;
        }

        public Criteria andSettlementTicketIn(List<String> values) {
            addCriterion("settlement_ticket in", values, "settlementTicket");
            return (Criteria) this;
        }

        public Criteria andSettlementTicketNotIn(List<String> values) {
            addCriterion("settlement_ticket not in", values, "settlementTicket");
            return (Criteria) this;
        }

        public Criteria andSettlementTicketBetween(String value1, String value2) {
            addCriterion("settlement_ticket between", value1, value2, "settlementTicket");
            return (Criteria) this;
        }

        public Criteria andSettlementTicketNotBetween(String value1, String value2) {
            addCriterion("settlement_ticket not between", value1, value2, "settlementTicket");
            return (Criteria) this;
        }

        public Criteria andSettlementTypeIsNull() {
            addCriterion("settlement_type is null");
            return (Criteria) this;
        }

        public Criteria andSettlementTypeIsNotNull() {
            addCriterion("settlement_type is not null");
            return (Criteria) this;
        }

        public Criteria andSettlementTypeEqualTo(String value) {
            addCriterion("settlement_type =", value, "settlementType");
            return (Criteria) this;
        }

        public Criteria andSettlementTypeNotEqualTo(String value) {
            addCriterion("settlement_type <>", value, "settlementType");
            return (Criteria) this;
        }

        public Criteria andSettlementTypeGreaterThan(String value) {
            addCriterion("settlement_type >", value, "settlementType");
            return (Criteria) this;
        }

        public Criteria andSettlementTypeGreaterThanOrEqualTo(String value) {
            addCriterion("settlement_type >=", value, "settlementType");
            return (Criteria) this;
        }

        public Criteria andSettlementTypeLessThan(String value) {
            addCriterion("settlement_type <", value, "settlementType");
            return (Criteria) this;
        }

        public Criteria andSettlementTypeLessThanOrEqualTo(String value) {
            addCriterion("settlement_type <=", value, "settlementType");
            return (Criteria) this;
        }

        public Criteria andSettlementTypeLike(String value) {
            addCriterion("settlement_type like", value, "settlementType");
            return (Criteria) this;
        }

        public Criteria andSettlementTypeNotLike(String value) {
            addCriterion("settlement_type not like", value, "settlementType");
            return (Criteria) this;
        }

        public Criteria andSettlementTypeIn(List<String> values) {
            addCriterion("settlement_type in", values, "settlementType");
            return (Criteria) this;
        }

        public Criteria andSettlementTypeNotIn(List<String> values) {
            addCriterion("settlement_type not in", values, "settlementType");
            return (Criteria) this;
        }

        public Criteria andSettlementTypeBetween(String value1, String value2) {
            addCriterion("settlement_type between", value1, value2, "settlementType");
            return (Criteria) this;
        }

        public Criteria andSettlementTypeNotBetween(String value1, String value2) {
            addCriterion("settlement_type not between", value1, value2, "settlementType");
            return (Criteria) this;
        }

        public Criteria andAddressNoIsNull() {
            addCriterion("address_no is null");
            return (Criteria) this;
        }

        public Criteria andAddressNoIsNotNull() {
            addCriterion("address_no is not null");
            return (Criteria) this;
        }

        public Criteria andAddressNoEqualTo(String value) {
            addCriterion("address_no =", value, "addressNo");
            return (Criteria) this;
        }

        public Criteria andAddressNoNotEqualTo(String value) {
            addCriterion("address_no <>", value, "addressNo");
            return (Criteria) this;
        }

        public Criteria andAddressNoGreaterThan(String value) {
            addCriterion("address_no >", value, "addressNo");
            return (Criteria) this;
        }

        public Criteria andAddressNoGreaterThanOrEqualTo(String value) {
            addCriterion("address_no >=", value, "addressNo");
            return (Criteria) this;
        }

        public Criteria andAddressNoLessThan(String value) {
            addCriterion("address_no <", value, "addressNo");
            return (Criteria) this;
        }

        public Criteria andAddressNoLessThanOrEqualTo(String value) {
            addCriterion("address_no <=", value, "addressNo");
            return (Criteria) this;
        }

        public Criteria andAddressNoLike(String value) {
            addCriterion("address_no like", value, "addressNo");
            return (Criteria) this;
        }

        public Criteria andAddressNoNotLike(String value) {
            addCriterion("address_no not like", value, "addressNo");
            return (Criteria) this;
        }

        public Criteria andAddressNoIn(List<String> values) {
            addCriterion("address_no in", values, "addressNo");
            return (Criteria) this;
        }

        public Criteria andAddressNoNotIn(List<String> values) {
            addCriterion("address_no not in", values, "addressNo");
            return (Criteria) this;
        }

        public Criteria andAddressNoBetween(String value1, String value2) {
            addCriterion("address_no between", value1, value2, "addressNo");
            return (Criteria) this;
        }

        public Criteria andAddressNoNotBetween(String value1, String value2) {
            addCriterion("address_no not between", value1, value2, "addressNo");
            return (Criteria) this;
        }

        public Criteria andStartNoIsNull() {
            addCriterion("start_no is null");
            return (Criteria) this;
        }

        public Criteria andStartNoIsNotNull() {
            addCriterion("start_no is not null");
            return (Criteria) this;
        }

        public Criteria andStartNoEqualTo(String value) {
            addCriterion("start_no =", value, "startNo");
            return (Criteria) this;
        }

        public Criteria andStartNoNotEqualTo(String value) {
            addCriterion("start_no <>", value, "startNo");
            return (Criteria) this;
        }

        public Criteria andStartNoGreaterThan(String value) {
            addCriterion("start_no >", value, "startNo");
            return (Criteria) this;
        }

        public Criteria andStartNoGreaterThanOrEqualTo(String value) {
            addCriterion("start_no >=", value, "startNo");
            return (Criteria) this;
        }

        public Criteria andStartNoLessThan(String value) {
            addCriterion("start_no <", value, "startNo");
            return (Criteria) this;
        }

        public Criteria andStartNoLessThanOrEqualTo(String value) {
            addCriterion("start_no <=", value, "startNo");
            return (Criteria) this;
        }

        public Criteria andStartNoLike(String value) {
            addCriterion("start_no like", value, "startNo");
            return (Criteria) this;
        }

        public Criteria andStartNoNotLike(String value) {
            addCriterion("start_no not like", value, "startNo");
            return (Criteria) this;
        }

        public Criteria andStartNoIn(List<String> values) {
            addCriterion("start_no in", values, "startNo");
            return (Criteria) this;
        }

        public Criteria andStartNoNotIn(List<String> values) {
            addCriterion("start_no not in", values, "startNo");
            return (Criteria) this;
        }

        public Criteria andStartNoBetween(String value1, String value2) {
            addCriterion("start_no between", value1, value2, "startNo");
            return (Criteria) this;
        }

        public Criteria andStartNoNotBetween(String value1, String value2) {
            addCriterion("start_no not between", value1, value2, "startNo");
            return (Criteria) this;
        }

        public Criteria andStartNameIsNull() {
            addCriterion("start_name is null");
            return (Criteria) this;
        }

        public Criteria andStartNameIsNotNull() {
            addCriterion("start_name is not null");
            return (Criteria) this;
        }

        public Criteria andStartNameEqualTo(String value) {
            addCriterion("start_name =", value, "startName");
            return (Criteria) this;
        }

        public Criteria andStartNameNotEqualTo(String value) {
            addCriterion("start_name <>", value, "startName");
            return (Criteria) this;
        }

        public Criteria andStartNameGreaterThan(String value) {
            addCriterion("start_name >", value, "startName");
            return (Criteria) this;
        }

        public Criteria andStartNameGreaterThanOrEqualTo(String value) {
            addCriterion("start_name >=", value, "startName");
            return (Criteria) this;
        }

        public Criteria andStartNameLessThan(String value) {
            addCriterion("start_name <", value, "startName");
            return (Criteria) this;
        }

        public Criteria andStartNameLessThanOrEqualTo(String value) {
            addCriterion("start_name <=", value, "startName");
            return (Criteria) this;
        }

        public Criteria andStartNameLike(String value) {
            addCriterion("start_name like", value, "startName");
            return (Criteria) this;
        }

        public Criteria andStartNameNotLike(String value) {
            addCriterion("start_name not like", value, "startName");
            return (Criteria) this;
        }

        public Criteria andStartNameIn(List<String> values) {
            addCriterion("start_name in", values, "startName");
            return (Criteria) this;
        }

        public Criteria andStartNameNotIn(List<String> values) {
            addCriterion("start_name not in", values, "startName");
            return (Criteria) this;
        }

        public Criteria andStartNameBetween(String value1, String value2) {
            addCriterion("start_name between", value1, value2, "startName");
            return (Criteria) this;
        }

        public Criteria andStartNameNotBetween(String value1, String value2) {
            addCriterion("start_name not between", value1, value2, "startName");
            return (Criteria) this;
        }

        public Criteria andEndNoIsNull() {
            addCriterion("end_no is null");
            return (Criteria) this;
        }

        public Criteria andEndNoIsNotNull() {
            addCriterion("end_no is not null");
            return (Criteria) this;
        }

        public Criteria andEndNoEqualTo(String value) {
            addCriterion("end_no =", value, "endNo");
            return (Criteria) this;
        }

        public Criteria andEndNoNotEqualTo(String value) {
            addCriterion("end_no <>", value, "endNo");
            return (Criteria) this;
        }

        public Criteria andEndNoGreaterThan(String value) {
            addCriterion("end_no >", value, "endNo");
            return (Criteria) this;
        }

        public Criteria andEndNoGreaterThanOrEqualTo(String value) {
            addCriterion("end_no >=", value, "endNo");
            return (Criteria) this;
        }

        public Criteria andEndNoLessThan(String value) {
            addCriterion("end_no <", value, "endNo");
            return (Criteria) this;
        }

        public Criteria andEndNoLessThanOrEqualTo(String value) {
            addCriterion("end_no <=", value, "endNo");
            return (Criteria) this;
        }

        public Criteria andEndNoLike(String value) {
            addCriterion("end_no like", value, "endNo");
            return (Criteria) this;
        }

        public Criteria andEndNoNotLike(String value) {
            addCriterion("end_no not like", value, "endNo");
            return (Criteria) this;
        }

        public Criteria andEndNoIn(List<String> values) {
            addCriterion("end_no in", values, "endNo");
            return (Criteria) this;
        }

        public Criteria andEndNoNotIn(List<String> values) {
            addCriterion("end_no not in", values, "endNo");
            return (Criteria) this;
        }

        public Criteria andEndNoBetween(String value1, String value2) {
            addCriterion("end_no between", value1, value2, "endNo");
            return (Criteria) this;
        }

        public Criteria andEndNoNotBetween(String value1, String value2) {
            addCriterion("end_no not between", value1, value2, "endNo");
            return (Criteria) this;
        }

        public Criteria andEndNameIsNull() {
            addCriterion("end_name is null");
            return (Criteria) this;
        }

        public Criteria andEndNameIsNotNull() {
            addCriterion("end_name is not null");
            return (Criteria) this;
        }

        public Criteria andEndNameEqualTo(String value) {
            addCriterion("end_name =", value, "endName");
            return (Criteria) this;
        }

        public Criteria andEndNameNotEqualTo(String value) {
            addCriterion("end_name <>", value, "endName");
            return (Criteria) this;
        }

        public Criteria andEndNameGreaterThan(String value) {
            addCriterion("end_name >", value, "endName");
            return (Criteria) this;
        }

        public Criteria andEndNameGreaterThanOrEqualTo(String value) {
            addCriterion("end_name >=", value, "endName");
            return (Criteria) this;
        }

        public Criteria andEndNameLessThan(String value) {
            addCriterion("end_name <", value, "endName");
            return (Criteria) this;
        }

        public Criteria andEndNameLessThanOrEqualTo(String value) {
            addCriterion("end_name <=", value, "endName");
            return (Criteria) this;
        }

        public Criteria andEndNameLike(String value) {
            addCriterion("end_name like", value, "endName");
            return (Criteria) this;
        }

        public Criteria andEndNameNotLike(String value) {
            addCriterion("end_name not like", value, "endName");
            return (Criteria) this;
        }

        public Criteria andEndNameIn(List<String> values) {
            addCriterion("end_name in", values, "endName");
            return (Criteria) this;
        }

        public Criteria andEndNameNotIn(List<String> values) {
            addCriterion("end_name not in", values, "endName");
            return (Criteria) this;
        }

        public Criteria andEndNameBetween(String value1, String value2) {
            addCriterion("end_name between", value1, value2, "endName");
            return (Criteria) this;
        }

        public Criteria andEndNameNotBetween(String value1, String value2) {
            addCriterion("end_name not between", value1, value2, "endName");
            return (Criteria) this;
        }

        public Criteria andEndAreaIsNull() {
            addCriterion("end_area is null");
            return (Criteria) this;
        }

        public Criteria andEndAreaIsNotNull() {
            addCriterion("end_area is not null");
            return (Criteria) this;
        }

        public Criteria andEndAreaEqualTo(String value) {
            addCriterion("end_area =", value, "endArea");
            return (Criteria) this;
        }

        public Criteria andEndAreaNotEqualTo(String value) {
            addCriterion("end_area <>", value, "endArea");
            return (Criteria) this;
        }

        public Criteria andEndAreaGreaterThan(String value) {
            addCriterion("end_area >", value, "endArea");
            return (Criteria) this;
        }

        public Criteria andEndAreaGreaterThanOrEqualTo(String value) {
            addCriterion("end_area >=", value, "endArea");
            return (Criteria) this;
        }

        public Criteria andEndAreaLessThan(String value) {
            addCriterion("end_area <", value, "endArea");
            return (Criteria) this;
        }

        public Criteria andEndAreaLessThanOrEqualTo(String value) {
            addCriterion("end_area <=", value, "endArea");
            return (Criteria) this;
        }

        public Criteria andEndAreaLike(String value) {
            addCriterion("end_area like", value, "endArea");
            return (Criteria) this;
        }

        public Criteria andEndAreaNotLike(String value) {
            addCriterion("end_area not like", value, "endArea");
            return (Criteria) this;
        }

        public Criteria andEndAreaIn(List<String> values) {
            addCriterion("end_area in", values, "endArea");
            return (Criteria) this;
        }

        public Criteria andEndAreaNotIn(List<String> values) {
            addCriterion("end_area not in", values, "endArea");
            return (Criteria) this;
        }

        public Criteria andEndAreaBetween(String value1, String value2) {
            addCriterion("end_area between", value1, value2, "endArea");
            return (Criteria) this;
        }

        public Criteria andEndAreaNotBetween(String value1, String value2) {
            addCriterion("end_area not between", value1, value2, "endArea");
            return (Criteria) this;
        }

        public Criteria andQualityAddressNoIsNull() {
            addCriterion("quality_address_no is null");
            return (Criteria) this;
        }

        public Criteria andQualityAddressNoIsNotNull() {
            addCriterion("quality_address_no is not null");
            return (Criteria) this;
        }

        public Criteria andQualityAddressNoEqualTo(String value) {
            addCriterion("quality_address_no =", value, "qualityAddressNo");
            return (Criteria) this;
        }

        public Criteria andQualityAddressNoNotEqualTo(String value) {
            addCriterion("quality_address_no <>", value, "qualityAddressNo");
            return (Criteria) this;
        }

        public Criteria andQualityAddressNoGreaterThan(String value) {
            addCriterion("quality_address_no >", value, "qualityAddressNo");
            return (Criteria) this;
        }

        public Criteria andQualityAddressNoGreaterThanOrEqualTo(String value) {
            addCriterion("quality_address_no >=", value, "qualityAddressNo");
            return (Criteria) this;
        }

        public Criteria andQualityAddressNoLessThan(String value) {
            addCriterion("quality_address_no <", value, "qualityAddressNo");
            return (Criteria) this;
        }

        public Criteria andQualityAddressNoLessThanOrEqualTo(String value) {
            addCriterion("quality_address_no <=", value, "qualityAddressNo");
            return (Criteria) this;
        }

        public Criteria andQualityAddressNoLike(String value) {
            addCriterion("quality_address_no like", value, "qualityAddressNo");
            return (Criteria) this;
        }

        public Criteria andQualityAddressNoNotLike(String value) {
            addCriterion("quality_address_no not like", value, "qualityAddressNo");
            return (Criteria) this;
        }

        public Criteria andQualityAddressNoIn(List<String> values) {
            addCriterion("quality_address_no in", values, "qualityAddressNo");
            return (Criteria) this;
        }

        public Criteria andQualityAddressNoNotIn(List<String> values) {
            addCriterion("quality_address_no not in", values, "qualityAddressNo");
            return (Criteria) this;
        }

        public Criteria andQualityAddressNoBetween(String value1, String value2) {
            addCriterion("quality_address_no between", value1, value2, "qualityAddressNo");
            return (Criteria) this;
        }

        public Criteria andQualityAddressNoNotBetween(String value1, String value2) {
            addCriterion("quality_address_no not between", value1, value2, "qualityAddressNo");
            return (Criteria) this;
        }

        public Criteria andQualityCountIsNull() {
            addCriterion("quality_count is null");
            return (Criteria) this;
        }

        public Criteria andQualityCountIsNotNull() {
            addCriterion("quality_count is not null");
            return (Criteria) this;
        }

        public Criteria andQualityCountEqualTo(Integer value) {
            addCriterion("quality_count =", value, "qualityCount");
            return (Criteria) this;
        }

        public Criteria andQualityCountNotEqualTo(Integer value) {
            addCriterion("quality_count <>", value, "qualityCount");
            return (Criteria) this;
        }

        public Criteria andQualityCountGreaterThan(Integer value) {
            addCriterion("quality_count >", value, "qualityCount");
            return (Criteria) this;
        }

        public Criteria andQualityCountGreaterThanOrEqualTo(Integer value) {
            addCriterion("quality_count >=", value, "qualityCount");
            return (Criteria) this;
        }

        public Criteria andQualityCountLessThan(Integer value) {
            addCriterion("quality_count <", value, "qualityCount");
            return (Criteria) this;
        }

        public Criteria andQualityCountLessThanOrEqualTo(Integer value) {
            addCriterion("quality_count <=", value, "qualityCount");
            return (Criteria) this;
        }

        public Criteria andQualityCountIn(List<Integer> values) {
            addCriterion("quality_count in", values, "qualityCount");
            return (Criteria) this;
        }

        public Criteria andQualityCountNotIn(List<Integer> values) {
            addCriterion("quality_count not in", values, "qualityCount");
            return (Criteria) this;
        }

        public Criteria andQualityCountBetween(Integer value1, Integer value2) {
            addCriterion("quality_count between", value1, value2, "qualityCount");
            return (Criteria) this;
        }

        public Criteria andQualityCountNotBetween(Integer value1, Integer value2) {
            addCriterion("quality_count not between", value1, value2, "qualityCount");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressNoIsNull() {
            addCriterion("invoice_address_no is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressNoIsNotNull() {
            addCriterion("invoice_address_no is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressNoEqualTo(String value) {
            addCriterion("invoice_address_no =", value, "invoiceAddressNo");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressNoNotEqualTo(String value) {
            addCriterion("invoice_address_no <>", value, "invoiceAddressNo");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressNoGreaterThan(String value) {
            addCriterion("invoice_address_no >", value, "invoiceAddressNo");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressNoGreaterThanOrEqualTo(String value) {
            addCriterion("invoice_address_no >=", value, "invoiceAddressNo");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressNoLessThan(String value) {
            addCriterion("invoice_address_no <", value, "invoiceAddressNo");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressNoLessThanOrEqualTo(String value) {
            addCriterion("invoice_address_no <=", value, "invoiceAddressNo");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressNoLike(String value) {
            addCriterion("invoice_address_no like", value, "invoiceAddressNo");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressNoNotLike(String value) {
            addCriterion("invoice_address_no not like", value, "invoiceAddressNo");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressNoIn(List<String> values) {
            addCriterion("invoice_address_no in", values, "invoiceAddressNo");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressNoNotIn(List<String> values) {
            addCriterion("invoice_address_no not in", values, "invoiceAddressNo");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressNoBetween(String value1, String value2) {
            addCriterion("invoice_address_no between", value1, value2, "invoiceAddressNo");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressNoNotBetween(String value1, String value2) {
            addCriterion("invoice_address_no not between", value1, value2, "invoiceAddressNo");
            return (Criteria) this;
        }

        public Criteria andDepotidIsNull() {
            addCriterion("depotId is null");
            return (Criteria) this;
        }

        public Criteria andDepotidIsNotNull() {
            addCriterion("depotId is not null");
            return (Criteria) this;
        }

        public Criteria andDepotidEqualTo(String value) {
            addCriterion("depotId =", value, "depotid");
            return (Criteria) this;
        }

        public Criteria andDepotidNotEqualTo(String value) {
            addCriterion("depotId <>", value, "depotid");
            return (Criteria) this;
        }

        public Criteria andDepotidGreaterThan(String value) {
            addCriterion("depotId >", value, "depotid");
            return (Criteria) this;
        }

        public Criteria andDepotidGreaterThanOrEqualTo(String value) {
            addCriterion("depotId >=", value, "depotid");
            return (Criteria) this;
        }

        public Criteria andDepotidLessThan(String value) {
            addCriterion("depotId <", value, "depotid");
            return (Criteria) this;
        }

        public Criteria andDepotidLessThanOrEqualTo(String value) {
            addCriterion("depotId <=", value, "depotid");
            return (Criteria) this;
        }

        public Criteria andDepotidLike(String value) {
            addCriterion("depotId like", value, "depotid");
            return (Criteria) this;
        }

        public Criteria andDepotidNotLike(String value) {
            addCriterion("depotId not like", value, "depotid");
            return (Criteria) this;
        }

        public Criteria andDepotidIn(List<String> values) {
            addCriterion("depotId in", values, "depotid");
            return (Criteria) this;
        }

        public Criteria andDepotidNotIn(List<String> values) {
            addCriterion("depotId not in", values, "depotid");
            return (Criteria) this;
        }

        public Criteria andDepotidBetween(String value1, String value2) {
            addCriterion("depotId between", value1, value2, "depotid");
            return (Criteria) this;
        }

        public Criteria andDepotidNotBetween(String value1, String value2) {
            addCriterion("depotId not between", value1, value2, "depotid");
            return (Criteria) this;
        }

        public Criteria andWarehouseNoIsNull() {
            addCriterion("warehouse_no is null");
            return (Criteria) this;
        }

        public Criteria andWarehouseNoIsNotNull() {
            addCriterion("warehouse_no is not null");
            return (Criteria) this;
        }

        public Criteria andWarehouseNoEqualTo(String value) {
            addCriterion("warehouse_no =", value, "warehouseNo");
            return (Criteria) this;
        }

        public Criteria andWarehouseNoNotEqualTo(String value) {
            addCriterion("warehouse_no <>", value, "warehouseNo");
            return (Criteria) this;
        }

        public Criteria andWarehouseNoGreaterThan(String value) {
            addCriterion("warehouse_no >", value, "warehouseNo");
            return (Criteria) this;
        }

        public Criteria andWarehouseNoGreaterThanOrEqualTo(String value) {
            addCriterion("warehouse_no >=", value, "warehouseNo");
            return (Criteria) this;
        }

        public Criteria andWarehouseNoLessThan(String value) {
            addCriterion("warehouse_no <", value, "warehouseNo");
            return (Criteria) this;
        }

        public Criteria andWarehouseNoLessThanOrEqualTo(String value) {
            addCriterion("warehouse_no <=", value, "warehouseNo");
            return (Criteria) this;
        }

        public Criteria andWarehouseNoLike(String value) {
            addCriterion("warehouse_no like", value, "warehouseNo");
            return (Criteria) this;
        }

        public Criteria andWarehouseNoNotLike(String value) {
            addCriterion("warehouse_no not like", value, "warehouseNo");
            return (Criteria) this;
        }

        public Criteria andWarehouseNoIn(List<String> values) {
            addCriterion("warehouse_no in", values, "warehouseNo");
            return (Criteria) this;
        }

        public Criteria andWarehouseNoNotIn(List<String> values) {
            addCriterion("warehouse_no not in", values, "warehouseNo");
            return (Criteria) this;
        }

        public Criteria andWarehouseNoBetween(String value1, String value2) {
            addCriterion("warehouse_no between", value1, value2, "warehouseNo");
            return (Criteria) this;
        }

        public Criteria andWarehouseNoNotBetween(String value1, String value2) {
            addCriterion("warehouse_no not between", value1, value2, "warehouseNo");
            return (Criteria) this;
        }

        public Criteria andConsigneeIsNull() {
            addCriterion("consignee is null");
            return (Criteria) this;
        }

        public Criteria andConsigneeIsNotNull() {
            addCriterion("consignee is not null");
            return (Criteria) this;
        }

        public Criteria andConsigneeEqualTo(String value) {
            addCriterion("consignee =", value, "consignee");
            return (Criteria) this;
        }

        public Criteria andConsigneeNotEqualTo(String value) {
            addCriterion("consignee <>", value, "consignee");
            return (Criteria) this;
        }

        public Criteria andConsigneeGreaterThan(String value) {
            addCriterion("consignee >", value, "consignee");
            return (Criteria) this;
        }

        public Criteria andConsigneeGreaterThanOrEqualTo(String value) {
            addCriterion("consignee >=", value, "consignee");
            return (Criteria) this;
        }

        public Criteria andConsigneeLessThan(String value) {
            addCriterion("consignee <", value, "consignee");
            return (Criteria) this;
        }

        public Criteria andConsigneeLessThanOrEqualTo(String value) {
            addCriterion("consignee <=", value, "consignee");
            return (Criteria) this;
        }

        public Criteria andConsigneeLike(String value) {
            addCriterion("consignee like", value, "consignee");
            return (Criteria) this;
        }

        public Criteria andConsigneeNotLike(String value) {
            addCriterion("consignee not like", value, "consignee");
            return (Criteria) this;
        }

        public Criteria andConsigneeIn(List<String> values) {
            addCriterion("consignee in", values, "consignee");
            return (Criteria) this;
        }

        public Criteria andConsigneeNotIn(List<String> values) {
            addCriterion("consignee not in", values, "consignee");
            return (Criteria) this;
        }

        public Criteria andConsigneeBetween(String value1, String value2) {
            addCriterion("consignee between", value1, value2, "consignee");
            return (Criteria) this;
        }

        public Criteria andConsigneeNotBetween(String value1, String value2) {
            addCriterion("consignee not between", value1, value2, "consignee");
            return (Criteria) this;
        }

        public Criteria andAddressNameIsNull() {
            addCriterion("address_name is null");
            return (Criteria) this;
        }

        public Criteria andAddressNameIsNotNull() {
            addCriterion("address_name is not null");
            return (Criteria) this;
        }

        public Criteria andAddressNameEqualTo(String value) {
            addCriterion("address_name =", value, "addressName");
            return (Criteria) this;
        }

        public Criteria andAddressNameNotEqualTo(String value) {
            addCriterion("address_name <>", value, "addressName");
            return (Criteria) this;
        }

        public Criteria andAddressNameGreaterThan(String value) {
            addCriterion("address_name >", value, "addressName");
            return (Criteria) this;
        }

        public Criteria andAddressNameGreaterThanOrEqualTo(String value) {
            addCriterion("address_name >=", value, "addressName");
            return (Criteria) this;
        }

        public Criteria andAddressNameLessThan(String value) {
            addCriterion("address_name <", value, "addressName");
            return (Criteria) this;
        }

        public Criteria andAddressNameLessThanOrEqualTo(String value) {
            addCriterion("address_name <=", value, "addressName");
            return (Criteria) this;
        }

        public Criteria andAddressNameLike(String value) {
            addCriterion("address_name like", value, "addressName");
            return (Criteria) this;
        }

        public Criteria andAddressNameNotLike(String value) {
            addCriterion("address_name not like", value, "addressName");
            return (Criteria) this;
        }

        public Criteria andAddressNameIn(List<String> values) {
            addCriterion("address_name in", values, "addressName");
            return (Criteria) this;
        }

        public Criteria andAddressNameNotIn(List<String> values) {
            addCriterion("address_name not in", values, "addressName");
            return (Criteria) this;
        }

        public Criteria andAddressNameBetween(String value1, String value2) {
            addCriterion("address_name between", value1, value2, "addressName");
            return (Criteria) this;
        }

        public Criteria andAddressNameNotBetween(String value1, String value2) {
            addCriterion("address_name not between", value1, value2, "addressName");
            return (Criteria) this;
        }

        public Criteria andMobileIsNull() {
            addCriterion("mobile is null");
            return (Criteria) this;
        }

        public Criteria andMobileIsNotNull() {
            addCriterion("mobile is not null");
            return (Criteria) this;
        }

        public Criteria andMobileEqualTo(String value) {
            addCriterion("mobile =", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileNotEqualTo(String value) {
            addCriterion("mobile <>", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileGreaterThan(String value) {
            addCriterion("mobile >", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileGreaterThanOrEqualTo(String value) {
            addCriterion("mobile >=", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileLessThan(String value) {
            addCriterion("mobile <", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileLessThanOrEqualTo(String value) {
            addCriterion("mobile <=", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileLike(String value) {
            addCriterion("mobile like", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileNotLike(String value) {
            addCriterion("mobile not like", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileIn(List<String> values) {
            addCriterion("mobile in", values, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileNotIn(List<String> values) {
            addCriterion("mobile not in", values, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileBetween(String value1, String value2) {
            addCriterion("mobile between", value1, value2, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileNotBetween(String value1, String value2) {
            addCriterion("mobile not between", value1, value2, "mobile");
            return (Criteria) this;
        }

        public Criteria andCreateDateIsNull() {
            addCriterion("create_date is null");
            return (Criteria) this;
        }

        public Criteria andCreateDateIsNotNull() {
            addCriterion("create_date is not null");
            return (Criteria) this;
        }

        public Criteria andCreateDateEqualTo(Date value) {
            addCriterion("create_date =", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotEqualTo(Date value) {
            addCriterion("create_date <>", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateGreaterThan(Date value) {
            addCriterion("create_date >", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateGreaterThanOrEqualTo(Date value) {
            addCriterion("create_date >=", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateLessThan(Date value) {
            addCriterion("create_date <", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateLessThanOrEqualTo(Date value) {
            addCriterion("create_date <=", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateIn(List<Date> values) {
            addCriterion("create_date in", values, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotIn(List<Date> values) {
            addCriterion("create_date not in", values, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateBetween(Date value1, Date value2) {
            addCriterion("create_date between", value1, value2, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotBetween(Date value1, Date value2) {
            addCriterion("create_date not between", value1, value2, "createDate");
            return (Criteria) this;
        }
    }

    /**
     * framework_contract_address_info
     */
    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    /**
     * @title framework_contract_address_info表的实体类
     * @description framework_contract_address_info
     * @version 1.0
     * @author may
     * @date 2021-04-05 18:58:09
     */
    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}
